using System;
using System.Collections.Generic;
using ns26;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("DeckTemplatePickerButton")]
	public class DeckTemplatePickerButton : PegUIElement
	{
		public MeshRenderer m_deckTexture => method_3<MeshRenderer>("m_deckTexture");

		public MeshRenderer m_packRibbon => method_3<MeshRenderer>("m_packRibbon");

		public GameObject m_selectGlow => method_3<GameObject>("m_selectGlow");

		public UberText m_title => method_3<UberText>("m_title");

		public List<UberText> m_cardCountTexts => method_3<Class271<UberText>>("m_cardCountTexts")?.method_25();

		public GameObject m_incompleteTextRibbon => method_3<GameObject>("m_incompleteTextRibbon");

		public GameObject m_completeTextRibbon => method_3<GameObject>("m_completeTextRibbon");

		public static int s_MinimumRecommendedSize => MonoClass.smethod_6<int>(TritonHs.MainAssemblyPath, "", "DeckTemplatePickerButton", "s_MinimumRecommendedSize");

		public bool m_isStarterDeck => method_2<bool>("m_isStarterDeck");

		public int m_ownedCardCount => method_2<int>("m_ownedCardCount");

		public DeckTemplatePickerButton(IntPtr address, string className)
			: base(address, className)
		{
		}

		public DeckTemplatePickerButton(IntPtr address)
			: this(address, "DeckTemplatePickerButton")
		{
		}

		public void SetIsStarterDeck(bool starter)
		{
			method_8("SetIsStarterDeck", starter);
		}

		public bool IsStarterDeck()
		{
			return method_11<bool>("IsStarterDeck", Array.Empty<object>());
		}

		public void SetSelected(bool selected)
		{
			method_8("SetSelected", selected);
		}

		public void SetTitleText(string titleText)
		{
			method_8("SetTitleText", titleText);
		}

		public void SetCardCountText(int count)
		{
			method_8("SetCardCountText", count);
		}

		public int GetOwnedCardCount()
		{
			return method_11<int>("GetOwnedCardCount", Array.Empty<object>());
		}

		public void SetDeckTexture(string texturePath)
		{
			method_8("SetDeckTexture", texturePath);
		}
	}
}
